(define (list->vector-aux l v n)
  (if (> n 0)
      (begin (vector-set! v (- n 1) (car l))
             (list->vector-aux (cdr l) v (- n 1)))
      v))

(define (list->vector l)
  (let* ((len (length l)))
    (list->vector-aux l (make-vector len) len)))


(define (string->list-aux s n m)
  (if (> n 0)
      (string->list-aux s (- n 1) (cons (string-ref s (- n 1)) m))
      m))

(define (string->list s)
  (string->list-aux s (string-length s) '()))

;(define (list->string c) (builtin list->string c))

(define (char->integer c) (builtin char->integer c))
(define (integer->char c) (builtin integer->char c))
